package fun.anin.aninhongbao.service;

import com.baomidou.mybatisplus.extension.service.IService;
import fun.anin.aninhongbao.dto.SendRedPacketDTO;
import fun.anin.aninhongbao.dto.SnatchRedPacketDTO;
import fun.anin.aninhongbao.dto.WalletDTO;
import fun.anin.aninhongbao.entity.RedPacketInfo;
import fun.anin.aninhongbao.result.R;
import fun.anin.aninhongbao.service.impl.WalletServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;

/**
 * 红包信息表(RedPacketInfo)表服务接口
 *
 * @author makejava
 * @since 2020-03-29 14:38:28
 */
public interface RedPacketInfoService extends IService<RedPacketInfo> {

    /**
     * 发红包
     * @param dto
     * @return
     */
    R sendRedPacket(SendRedPacketDTO dto);

    /**
     * 抢红包
     * @param dto
     * @return
     */
    R snatchRedPacket(SnatchRedPacketDTO dto);

    /**
     * 拆红包
     * @param dto
     * @return
     */
    R openRedPacket(SnatchRedPacketDTO dto);

    /**
     * 退还红包
     * @return
     */
    R backRedPacket(RedPacketInfo redPacketInfo);

    /**
     * 模拟拆红包
     * @return
     */
    R simulateOpen(Long redPacketId);

}